home *** CD-ROM | disk | FTP | other *** search
/ Almathera Ten Pack 3: CDPD 3 / Almathera Ten on Ten - Disc 3: CDPD3.iso / scope / 026-050 / scopedisk37 / tarot / nightmar.bas < prev    next >
BASIC Source File  |  1995-03-18  |  22KB  |  412 lines

  1. '
  2. ' NIGHTMARE -- A C128 80 COLUMN PROGRAM
  3. ' PORTED TO THE AMIGA BY ROGER C. YGBUHAY
  4. ' OCT. 16, 1988
  5. '
  6. 3 CLS:CLEAR:DIM waveform%(256),waveform1%(256)
  7. 4 SCREEN 2,640,200,4,2:WINDOW 2,"",,16,2
  8. 5 PALETTE 5,.33,.87,0!:PALETTE 0,0!,0!,0!:
  9. 10 PALETTE 1,0!,0!,1!:PALETTE 2,1!,1!,1!:PALETTE 3,1!,0!,0!
  10. 20 LINE (0,0)-(639,199),0,bf
  11. 30 LOCATE 3,1:COLOR 2,1:PRINT TAB(30)"                   "
  12. 40 PRINT TAB(30)" N I G H T M A R E "
  13. 50 PRINT TAB(30)"   T H E A T R E   "
  14. 60 PRINT TAB(30)"                   "
  15. 70 COLOR 0,5:PRINT TAB(30)"                   "
  16. 80 PRINT TAB(30)"  COPYRIGHT C1983  ":PRINT TAB(30)"BY D.BULL & L.NOVAK"
  17. 85 PRINT:PRINT TAB(30)"PORTED TO THE AMIGA" 
  18. 86 PRINT TAB(30)"BY ROGER C. YGBUHAY"
  19. 90 PRINT
  20. 100 GOSUB 3650
  21. 110 AA$="THE ARMOR VANISHES LEAVING ONLY A STEEL GAUNTLET."
  22. 120 DD$="IT'S VERY DARK IN HERE!!":SLEEP'5
  23. 130 LOCATE 15,22:PRINT "PRESS A KEY TO BEGIN THE NIGHTMARE!"
  24. 140 X$=INKEY$:IF X$="" GOTO 140
  25. 150 COLOR 5,0:PRINT:PRINT TAB(28)"LET THE NIGHTMARE BEGIN:"
  26. 160 PRINT TAB(22)"  YOU FIND YOURSELF FALLING ASLEEP "
  27. 170 PRINT TAB(29)"EVERYTHING GOES BLACK!":GOSUB 3670:FOR X=1 TO 1000:NEXT
  28. 180 
  29. 190 PRINT:INPUT"YOUR FIRST NAME PLEASE";NAM$
  30. 200 DIM RM$(36),OB$(51),OB(51),D(35,6),D$(6),F(10),J$(50)
  31. 210 MX=9:CA=0:U=1:L=0:G=33
  32. 220 FOR X=1 TO 6:READ D$(X):NEXT X
  33. 230 X=0
  34. 240 X=X+1:READ RM$(X):IF RM$(X)="END" GOTO 260
  35. 250 FOR Y=1 TO 6:READ D(X,Y):NEXT Y:GOTO 240
  36. 260 X=0
  37. 270 X=X+1:READ OB$(X):IF OB$(X)="END" THEN NO=X-1:GOTO 290
  38. 280 READ I$,J$(X),OB(X):OB$=OB$+I$:GOTO 270
  39. 290 X=0
  40. 300 X=X+1:READ I$:IF I$="END" THEN CLS:GOTO 320
  41. '300 X=X+1:READ I$:IF I$="END" THEN CLS:COLOR6,1:GOTO 320
  42. 310 VB$=VB$+LEFT$(I$,3):GOTO 300
  43. 320 REM
  44. 330 IF L=0 THEN IF U>15 THEN IF U<31 THEN PRINT"";DD$:GOTO 460
  45. 340 CLS:COLOR 1,5:PRINT TAB(28)" NIGHTMARE";:COLOR 3,5:PRINT" THEATRE ":COLOR 5,0
  46.  
  47. '350 PRINT"··············································································"
  48. 350 PRINT"------------------------------------------------------------------------------"
  49. '360 WINDOW0,4,79,20
  50. 360 
  51. 370 E=0:FOR WT=1 TO 1000:NEXT:GOSUB 3690:PRINT"YOU ARE ";:PRINT RM$(U)
  52. 380 F=0:FOR I=1 TO NO:IF INT(OB(I))=INT(U) THEN PRINT OB$(I):F=1
  53. 390 NEXT:IF F=0 THEN PRINT"THERE IS NOTHING SPECIAL TO BE SEEN."
  54. 400 IF D(21,2)=22 THEN IF U=22 THEN PRINT"THE PANEL SLIDES SHUT!":D(21,2)=0
  55. 410 IF OB(19)<>29 GOTO 440
  56. 420 IF OB(19)=29 THEN IF U=29 THEN PRINT"THE SUIT OF ARMOR COMES TO LIFE!"
  57. 430 IF OB(7)=-1 AND OB(19)=U THEN PRINT"HE SENSES THE AXE AND STANDS BACK FOR A MOMENT."
  58. 440 PRINT:COLOR 3,0:PRINT"OBVIOUS EXITS":FOR I=1 TO 6:IF D(U,I)<>0 THEN COLOR 3,0:PRINT"*";:COLOR 1,0:PRINT D$(I);
  59. 450 NEXT:PRINT:E=1
  60. 460 IF E<2 THEN IF OB(5)=U THEN PRINT"THE DOG SNARLS AND BEARS HIS TEETH"
  61. 470 SC=0
  62. 480 FOR I=1 TO NO:IF LEFT$(J$(I),1)="*" AND OB(I)=G THEN SC=SC+10
  63. 490 NEXT
  64. 500 I$="":PRINT:PRINT"WHAT NOW ";:COLOR 2,0:PRINT NAM$;":":COLOR 1,0:INPUT"*";I$:I$=UCASE$(I$):IF OB(5)=4 THEN IF OB(22)=-1 GOTO 2220
  65. 510 E=E+1
  66. 520 IF E=3 THEN IF U=4 THEN IF OB(5)=U THEN PRINT"THE DOG ANGRILY CHASES YOU OFF.":U=2:GOTO 330
  67. 530 IF I$="" GOTO 460
  68. 540 IF I$="QUIT" GOTO 2250
  69. 550 IF I$="SCORE" THEN PRINT"";NAM$;" YOU HAVE SCORED";SC;"OUT OF 110 POINTS.":GOTO 500
  70. 560 IF SC=110 THEN IF U=33 GOTO 2690
  71. 570 IF I$="LOOK" GOTO 330
  72. 575 IF LEFT$(I$,4)="EXIT" GOTO 440
  73. 580 IF I$="LOAD" THEN GOSUB 2330:GOTO 330
  74. 590 IF I$="SAVE" THEN GOSUB 2270:GOTO 460
  75. 600 IF LEFT$(I$,5)="SCREA" GOTO 1530
  76. 610 IF LEFT$(I$,2)="GO" THEN PRINT"USE SINGLE LETTERS FOR DIRECTIONS.":GOTO 460
  77. 620 IF LEFT$(I$,3)="LIS" THEN PRINT"":GOTO 2180
  78. 630 IF LEFT$(I$,3)<>"INV" GOTO 690
  79. 640 PRINT"YOU ARE CARRYING: ":F=0
  80. 650 FOR I=1 TO NO
  81. 660 IF OB(I)=-1 THEN PRINT J$(I):F=1
  82. 670 NEXT:IF F=0 THEN PRINT"NOTHING!"
  83. 680 GOTO 460
  84. 690 IF LEN(I$)=1 GOTO 950
  85. 700 IF I$="HELP" GOTO 1030
  86. 710 SP=1
  87. 720 T$=MID$(I$,SP,1)
  88. 730 IF T$=CHR$(32) GOTO 760
  89. 740 IF SP=15 THEN PRINT"I DON'T UNDERSTAND YOU":GOTO 460
  90. 750 SP=SP+1:GOTO 720
  91. 760 V$=LEFT$(I$,SP-1):O$=MID$(I$,SP+1):A$=LEFT$(V$,3):B$=LEFT$(O$,3)
  92. 770 IF A$="TAK" THEN A$="GET"
  93. 780 IF A$="LEA" THEN A$="DRO"
  94. 790 IF A$="LOO"THEN A$="EXA"
  95. 800 IF A$="MOV" OR A$="TUR" THEN A$="PUS"
  96. 810 IF A$="BRE" THEN A$="HIT"
  97. 820 IF B$="SKU" THEN B$="FIX"
  98. 830 IF B$="GLA" THEN B$="MAC"
  99. 840 TV=1
  100. 850 IF MID$(VB$,TV,3)=A$ GOTO 880
  101. 860 TV=TV+3:IF TV>98 THEN PRINT"I DON'T KNOW HOW TO ";V$;" ANYTHING.":GOTO 460
  102. 870 GOTO 850
  103. 880 V=(TV+2)/3
  104. 890 TV=1
  105. 900 IF MID$(OB$,TV,3)=B$ GOTO 930
  106. 910 TV=TV+3:IF TV>186 THEN PRINT"WHY DON'T YOU TRY SOMETHING ELSE.":GOTO 460
  107. 920 GOTO 900
  108. 930 O=(TV+2)/3
  109. 940 IF LEN(I$)>1 GOTO 1080
  110. 950 V=0:IF I$="N" AND D(U,1)<>0 THEN U=D(U,1):GOTO 330
  111. 960 IF I$="S" AND D(U,2)<>0 THEN U=D(U,2):GOTO 330
  112. 970 IF I$="E" AND D(U,3)<>0 THEN U=D(U,3):GOTO 330
  113. 980 IF I$="W" AND D(U,4)<>0 THEN U=D(U,4):GOTO 330
  114. 990 IF I$="U" AND D(U,5)<>0 THEN U=D(U,5):GOTO 330
  115. 1000 IF I$="D" AND D(U,6)<>0 THEN U=D(U,6):GOTO 330
  116. 1010 PRINT"YOU CAN'T GO THAT WAY!":GOTO 330
  117. 1020 GOTO 1080
  118. 1030 PRINT""
  119. 1040 IF U<6 THEN PRINT"YOU CAN TRY SCREAMING.":GOTO 460
  120. 1050 IF U<13 THEN PRINT"IF YOU THINK THIS IS TOUGH YOU BETTER QUIT NOW.":GOTO 460
  121. 1060 IF U<18 THEN PRINT"THERE IS NONE!":GOTO 460
  122. 1070 PRINT"YOU KNEW THE JOB WAS DANGEROUS WHEN YOU TOOK IT, FRED!":GOTO 460
  123. 1080 F=0:IF OB(O)=U THEN F=1
  124. 1090 IF OB(O)=-1 THEN F=2
  125. 1100 PRINT"":IF O<>47 AND F=0 THEN PRINT"YOU CAN'T.":GOTO 460
  126. 1110 ON V GOTO 1140,1280,1330,1420,1460,1490,1530,1540,1710,1730,1770,1820,1900,1950,2010
  127. 1120 V=V-15:ON V GOTO 2080,2160,2180
  128. 1130 PRINT"I DON'T UNDERSTAND!":GOTO 460
  129. 1140 IF F=2 THEN PRINT"YOU ALREADY HAVE IT!":GOTO 460
  130. 1150 IF CA=>MX THEN PRINT"YOU CAN'T CARRY MORE!":GOTO 460
  131. 1160 IF O=37 OR O=34 OR O=1 OR O=3 OR O=41 THEN PRINT"YOU CAN'T.":GOTO 460
  132. 1170 IF O=5 OR O=6 THEN PRINT"HE WON'T LET YOU!":GOTO 460
  133. 1180 IF O=4 AND OB(44)=0 THEN PRINT"HE GIVES YOU ";OB$(44):OB(44)=-1:CA=CA+1:GOTO 460
  134. 1190 IF O=11 OR O=18 OR O=17 OR O=10 OR O=13 THEN PRINT"LET'S BE SERIOUS!":GOTO 460
  135. 1200 IF O=42 OR O=35 THEN PRINT"YOU CAN'T LIFT IT BUT YOU MOVED IT!":GOTO 1950
  136. 1210 IF O=24 AND OB(5)=4 THEN PRINT"THE DOG WON'T LET YOU.":GOTO 460
  137. 1220 IF O=32 AND U=35 THEN PRINT"THE RAT DEMANDS SOMETHING IN RETURN.":GOTO 460
  138. 1230 IF O=33 AND OB(19)=29 THEN PRINT"THE ANIMATED ARMOR THROWS YOU OUT!":U=18:GOTO 330
  139. 1240 IF O<>20 GOTO 1260
  140. 1250 PRINT"THE SWORD IS STUCK IN THE STONE FLOOR!":GOTO 460
  141. 1260 IF O=19 OR O=12 OR O=50 THEN PRINT"YOU'VE GOT TO BE KIDDING!":GOTO 460
  142. 1270 CA=CA+1:OB(O)=-1:PRINT"OKAY!":GOTO 460
  143. 1280 IF F=2 GOTO 1300
  144. 1290 PRINT"YOU DON'T HAVE IT!":GOTO 460
  145. 1300 IF O=9 THEN OB$(9)="AN ENVELOPE IS LYING ON THE GROUND."
  146. 1310 IF O=7 THEN OB$(7)="AN AXE IS ON THE FLOOR."
  147. 1320 PRINT"OKAY":CA=CA-1:OB(O)=U:GOTO 460
  148. 1330 IF F=2 AND OB(27)=0 AND O=9 THEN PRINT"SOMETHING FELL OUT!":OB(27)=U:GOTO 460
  149. 1340 IF O=3 AND D(2,5)=0 THEN PRINT"IT IS LOCKED.":GOTO 460
  150. 1350 IF O=34 AND OB(38)=0 THEN PRINT"IT'S LOCKED!":GOTO 460
  151. 1360 IF O=37 AND OB(14)=0 THEN OB(14)=9:OB(31)=9:OB(37)=0:GOTO 330
  152. 1370 IF O=22 AND F=2 AND OB(40)=0 THEN PRINT OB$(40):OB(40)=-1:CA=CA+1:GOTO 460
  153. 1380 IF O=43 AND OB(46)=0 THEN PRINT"IT IS NAILED SHUT.":GOTO 460
  154. 1390 IF O=14 AND OB(14)=-1 THEN PRINT"A PHOTO OF AN OLD CHEWED UP TENNIS BALL":GOTO 460
  155. 1400 IF O=21 GOTO 2620
  156. 1410 PRINT"YOU'RE WASTING YOUR TIME.":GOTO 500
  157. 1420 IF O=1 THEN PRINT"SOME PEOPLE WILL TRY ANYTHING.":GOTO 460
  158. 1430 IF O=3 THEN PRINT"MUST YOU CLIMB THINGS.":GOTO 460
  159. 1440 IF F=2 AND O=26 AND U=10 THEN U=32:GOTO 330
  160. 1450 PRINT"YOU THINK YOU'RE A MONKEY?":GOTO 460
  161. 1460 IF O<>18 THEN PRINT"YOU BETTER KEEP MOVING!":GOTO 460
  162. 1470 PRINT"THE WALL SPINS AND YOU FIND YOURSELF IN ANOTHER ROOM!":U=24
  163. 1480 PRINT"HOW DO YOU EXPECT TO FIND THE TREASURES JUST SITTING AROUND?":GOTO 460
  164. 1490 IF U<>25 GOTO 1510
  165. 1500 IF O=30 AND U=25 THEN PRINT"THE ROPE HOOKS ON A CATWALK!":D(25,5)=26:OB(30)=0:GOTO 330
  166. 1510 IF O=30 AND U=25 THEN D(25,5)=26:GOTO 460
  167. 1520 GOTO 1280
  168. 1530 PRINT"AAAARRRRRGGGGGHHHH!":GOTO 460
  169. 1540 IF O=3 AND OB(9)=0 THEN OB(9)=U:PRINT OB$(9):GOTO 460
  170. 1550 IF F=2 AND OB(27)=0 AND O=9 THEN PRINT"IT IS SEALED.":GOTO 460
  171. 1560 IF O=35 OR OB(27)<>0 AND O=9 THEN PRINT"IT IS EMPTY":GOTO 460
  172. 1570 IF O=27 OR O=2 OR O=41 THEN PRINT"THERE'S WRITING ON IT.":GOTO 460
  173. 1580 IF O=4 THEN PRINT"HE WANTS TO TELL YOU SOMETHING.":GOTO 460
  174. 1590 IF O=34 OR O=37 THEN PRINT"MAYBE IT OPENS!":GOTO 460
  175. 1600 IF O=22 AND OB(40)=0 AND OB(36)=0 THEN PRINT"THERE'S SOMETHING INSIDE!":GOTO 460
  176. 1610 IF O=10 THEN PRINT"THE COVER IS MISSING.":GOTO 460
  177. 1620 IF O=14 AND OB(30)=0 THEN PRINT"THERE'S SOMETHING INSIDE!":GOTO 460
  178. 1630 IF O=11 AND OB(29)=0 THEN PRINT"THERE IS SOMETHING BEHIND THE GLASS!":GOTO 460
  179. 1640 IF O=48 THEN PRINT"IT IS STALE.":GOTO 460
  180. 1650 IF O=18 THEN PRINT"IT'S DRIPPING WITH FRESH BLOOD!!":GOTO 460
  181. 1660 IF O=21 THEN PRINT"WOW! A FIRST EDITION!":GOTO 460
  182. 1670 IF O<>13 GOTO 1700
  183. 1680 IF OB(33)=0 THEN PRINT"A JEWELED CIGAR CASE GLISTENS IN THE LIGHT!"
  184. 1690 OB(33)=29:GOTO 460
  185. 1700 PRINT"NOTHING OF INTEREST.":GOTO 460
  186. 1710 IF O=43 AND OB(24)=-1 AND OB(46)=0 THEN PRINT"INSIDE YOU SEE A ";OB$(46):OB(46)=28:GOTO 460
  187. 1720 PRINT"DON'T BE SILLY.":GOTO 460
  188. 1730 IF F<>2 THEN PRINT"YOU DON'T HAVE IT.":GOTO 460
  189. 1740 IF O=39 THEN PRINT"YUCCHH! TASTES LIKE MUD!":OB(39)=0:GOTO 460
  190. 1750 IF O=48 AND F=2 THEN PRINT"TASTES AWFUL, NEEDS BUTTER!":OB(48)=0:GOTO 460
  191. 1760 PRINT"DON'T YOU HAVE ANYTHING BETTER TO DO?":GOTO 460
  192. 1770 IF F=2 THEN IF O=2 GOTO 2390
  193. 1780 IF F=2 THEN IF O=27 THEN PRINT"******ADMIT ONE******":GOTO 460
  194. 1790 IF O=41 THEN PRINT"PLEASE WASH EACH HAND AFTER USE.":GOTO 460
  195. 1800 IF O=12 THEN PRINT"..AND MILES TO GO BEFORE I SLEE.....":GOTO 460
  196. 1810 PRINT"YOU CAN'T.":GOTO 460
  197. 1820 IF F=2 GOTO 1840
  198. 1830 PRINT"YOU DON'T HAVE IT!":GOTO 460
  199. 1840 IF O=25 AND U=35 AND OB(32)=U THEN PRINT"THE RAT ACCEPTS.":OB(25)=U:OB(32)=-1:GOTO 460
  200. 1850 IF O<>27 GOTO 1880
  201. 1860 PRINT"THE VALET SAYS 'ENJOY THE SHOW!":D(6,4)=8:OB(27)=0:CA=CA-1
  202. 1870 OB$(6)="THE VALET SMILES GRUSOMELY.":GOTO 330
  203. 1880 IF O=39 AND OB(5)=U THEN PRINT"THE DOG EATS AND RUNS OFF.":OB(5)=0:OB(39)=0:GOTO 460
  204. 1890 GOTO 1280
  205. 1900 IF O=34 THEN IF OB(38)=0 THEN IF OB(36)=-1 THEN PRINT"IT UNLOCKS!":OB(38)=9:GOTO 460
  206. 1910 IF O=3 THEN IF OB(16)=-1 THEN IF D(2,5)=0 THEN D(2,5)=33:D(33,6)=2:PRINT"IT OPENS!":GOTO 460
  207. 1920 IF O=3 THEN IF D(2,5)<>0 THEN PRINT"IT IS UNLOCKED. WAKE UP OUT THERE!":GOTO 460
  208. 1930 IF O=34 THEN IF OB(38)<>0 THEN PRINT"YOU ALREADY DID!":GOTO 460
  209. 1940 PRINT"YOU ARE UNABLE TO DO SO.":GOTO 460
  210. 1950 IF O=35 THEN IF OB(37)=0 THEN IF OB(31)=0 THEN PRINT"SOMETHING IS UNDERNEATH!":OB(37)=9:GOTO 460
  211. 1960 IF O=17 THEN D(21,2)=22:PRINT"A PANEL SLIDES OPEN.":GOTO 330
  212. 1970 IF O=42 THEN PRINT"THERE IS A PASSAGE LEADING DOWN.":D(19,6)=20:GOTO 460
  213. 1980 IF O=41 THEN PRINT"IT IS FASTENED TO THE WALL.":GOTO 460
  214. 1990 IF O=38 AND U<>13 THEN PRINT"IT'S NOT CONNECTED TO ANYTHING!":GOTO 460
  215. 2000 PRINT"NOTHING HAPPENED.":GOTO 460
  216. 2010 IF F=2 GOTO 2030
  217. 2020 PRINT"YOU DON'T HAVE IT.":GOTO 460
  218. 2030 IF O=38 AND U=13 AND L=0 THEN PRINT"YOU HEAR A CLATTER IN ANOTHER ROOM.":L=1:GOTO 460
  219. 2040 IF O=49 AND OB(20)=U THEN PRINT"THE GAUNTLET RETRIEVES THE SWORD.":OB(20)=-1:GOTO 460
  220. 2050 IF O=7 GOTO 2070
  221. 2060 PRINT"NOTHING HAPPENED.":GOTO 460
  222. 2070 IF OB(19)=U THEN PRINT AA$:OB(19)=0:OB(49)=29:GOTO 460
  223. 2080 IF O=3 GOTO 2590
  224. 2090 IF O=5 THEN PRINT"HE TAKES A BITE OF YOU!":GOTO 460
  225. 2100 IF O=19 AND OB(7)<>-1 GOTO 2660
  226. 2110 IF O=6 THEN PRINT"THE VALET LOSES HIS COOL. HE KICKS YOU DOWN THE STEPS.":U=1:GOTO 330
  227. 2120 IF O=50 THEN PRINT"I DON'T THINK SO!":GOTO 460
  228. 2130 IF O=4 THEN PRINT"HE SCREAMS AND RUNS DOWN THE ALLEY!":OB(4)=3:GOTO 460
  229. 2140 IF O=11 THEN IF OB(24)=-1 THEN IF OB(29)=0 THEN PRINT"THE GLASS SHATTERS!":OB(29)=11:GOTO 460
  230. 2150 PRINT"BETTER LUCK NEXT TIME.":GOTO 460
  231. 2160 IF U=10 AND OB(36)=0 THEN OB(36)=10:PRINT OB$(36):GOTO 460
  232. 2170 PRINT"GIMME A BREAK!":GOTO 460
  233. 2180 IF U=2 THEN PRINT"PUT THE TREASURES IN THE TRUCK AND TYPE 'SCORE'.":GOTO 460
  234. 2190 IF O=4 THEN PRINT"PLEASE TAKE ME WITH YOU!":GOTO 460
  235. 2200 PRINT"YOU HEAR ONLY THE WHISPER OF THE NIGHT."
  236. 2210 GOTO 460
  237. 2220 PRINT"YOU HAVE TAKEN THE DOG'S FAVORITE TOY. HE ANGRILY RIPS OUT YOUR";
  238. 2230 PRINT" THROAT. YOU STRUGGLE IN VAIN AS BLOOD GUSHES FROM YOUR WOUND."
  239. 2240 PRINT"YOU DIE A SLOW AND AGONIZING DEATH!":GOTO QUIT
  240. 2250 INPUT"ARE YOU SURE";Z$:Z$=UCASE$(Z$):IF LEFT$(Z$,1)<>"Y" GOTO 460
  241. 2260 PRINT"THE NIGHTMARE SHALL RETURN!":GOTO QUIT
  242. 2270 INPUT"FILE NAME";P$
  243. 2280 PRINT:PRINT"PRESS ANY KEY WHEN READY TO SAVE":'POKE198,0
  244. 2290 SG$=INKEY$:IF SG$="" GOTO 2290
  245. 2300 OPEN P$ FOR OUTPUT AS 2
  246. 2310 PRINT#2,U:PRINT#2,MX:PRINT#2,CA:PRINT#2,L:FOR I=1 TO NO
  247. 2320 PRINT#2,OB(I):NEXT:CLOSE #2:GOSUB 3610:RETURN
  248. 2330 INPUT"FILE NAME";P$
  249. 2340 PRINT:PRINT"PRESS ANY KEY WHEN READY TO LOAD":'POKE198,0
  250. 2350 G$=INKEY$:IF G$="" GOTO 2350
  251. 2360 OPEN P$ FOR INPUT AS #2
  252. 2370 INPUT#2,U:INPUT#2,MX:INPUT#2,CA:INPUT#2,L:FOR I=1 TO NO
  253. 2380 INPUT#2,OB(I):NEXT:CLOSE #2:GOSUB 3610:RETURN
  254. 2390 CLS:PRINT:PRINT
  255. '2390 CLS:WINDOW 20,0,60,24,1:PRINT"“":PRINT
  256. 2400 PRINT"TO WHOM IT MAY CONCERN:":PRINT
  257. 2410 PRINT"WELCOME TO NIGHTMARE THEATRE. THE";
  258. 2420 PRINT" RICH, FAMOUS,ECCENTRIC PLAYWRIGHT"
  259. 2430 PRINT"ZACH CORNWALL HAS DIED AT LAST. THE";
  260. 2440 PRINT" OLD COOT LEFT A FORTUNE IN FAMILY"
  261. 2450 PRINT"TREASURES HIDDEN INSIDE A ONCE";
  262. 2460 PRINT" CLASSIC THEATRE. TIME HAS TAKEN ITS"
  263. 2470 PRINT"TOLL ON THE BUILDING DESPITE THE ";
  264. 2480 PRINT"VALET'S EFFORTS TO KEEP IT ALIVE."
  265. 2490 PRINT"ACCESS TO THIS THEATRE IS BY";
  266. 2500 PRINT" INVITATION ONLY. WHOEVER FINDS"
  267. 2510 PRINT"THESE TREASURES AND ESCAPES FROM ";
  268. 2520 PRINT"ZACHARYVILLE ALIVE WILL BECOME A"
  269. 2530 PRINT"VERY WEALTHY PERSON. NONE WHO HAS ";
  270. 2540 PRINT"ENTERED THE MYSTERIOUS OLD BUILDING"
  271. 2550 PRINT"HAS SURVIVED. YOU MAY ALSO FIND ";
  272. 2560 PRINT"LEAVING TOWN ON FOOT VERY DIFFICULT."
  273. 2570 A$=INKEY$:IF A$="" GOTO 2570
  274. 2580 PRINT"“":GOTO 330
  275. 2590 PRINT"YOU BROKE THE WINDSHIELD.";
  276. 2600 PRINT" FLYING GLASS  SLASHES YOUR WRISTS. YOU WRITHE IN PAIN AS THE BLOOD";
  277. 2610 PRINT" OOZES INEXORABLY FROM YOUR WEAKENING BODY. YOU DIE.... TOO BAD!":GOTO QUIT
  278. 2620 PRINT"YOU HAVE ACTIVATED A SMALL POISONOUS DART INSIDE OF THE BOOK!"
  279. 2630 PRINT"IT WHIZZES OUT AND STICKS INTO YOUR EYE. YOU SCREAM AND STAGGER
  280. 2640 PRINT"BACKWARDS AGAINST THE WALL. IT IS THEN THAT YOU REALIZE THAT YOU
  281. 2650 PRINT"SHOULD HAVE STAYED HOME IN BED!!!! YOU ARE DEAD.....":GOTO QUIT
  282. 2660 PRINT"THE HAUNTED ARMOR GRABS YOU BY THE HEAD TEARING IT FROM YOUR BODY! YOU
  283. 2670 PRINT"BEGIN TO SEE THE ERROR OF YOUR WAYS AS YOUR HEAD IS BOUNCED ACROSS
  284. 2680 PRINT"THE ROOM!!!!    YOU HAVE DIED......."
  285. 2685 FOR QQQQQ=1 TO 1000:NEXT:GOTO QUIT
  286. 2690 PRINT"      CONGRATULATIONS YOU DID IT!":FOR QQQQ=1 TO 1000:NEXT:GOTO QUIT
  287. 2700 DATA NORTH,SOUTH,EAST,WEST,UP,DOWN
  288. 2710 DATA "IN A DIMLY LIT PARKING LOT NEAR AN OLD WEATHER WORN BRICK BUILDING.
  289. 2720 DATA 3,5,2,6,,
  290. 2730 DATA "AT THE EAST END OF THE PARKING LOT. YOU HEAR VOICES IN THE NITE."
  291. 2740 DATA ,4,,1,,
  292. 2750 DATA "IN A DARK DANGEROUS ALLEY.",,1,,,,
  293. 2760 DATA "IN A LARGE VACANT LOT.",2,,,5,,,"ON A DESERTED ROAD.",1,,4,7,,
  294. 2770 DATA "ON THE FRONT STEPS AT THE THEATRE ENTRANCE.",,7,1,,,
  295. 2780 DATA "TO THE SOUTH OF THE THEATRE. THE MARQUEE IS TATTERED AND TORN.",6,,5,,,
  296. 2790 DATA "IN THE FOYER OF THE THEATRE. STEPS LEAD UP.",9,10,6,12,11,
  297. 2800 DATA "IN THE TICKET OFFICE. A SIGN SAYS 'EMPLOYEES ONLY'.",,8,,,,
  298. 2810 DATA "IN A RESTROOM. THIS IS THE ONLY ONE PLEASE SHARE.",8,,,,,
  299. 2820 DATA "AT THE SNACK BAR. SPIDERWEBS CLING TO EVERYTHING.",,,,,,8
  300. 2830 DATA "AT THE REAR OF THE THEATRE. A BALCONY TOWERS OVER YOUR HEAD."
  301. 2840 DATA 14,15,8,16,13,0
  302. 2850 DATA "IN THE TECH LIGHTING BOOTH. A LEVER IS MISSING.",,,,,,12
  303. 2860 DATA "AT THE NORTH WALL OF THE THEATRE.",,12,,,,
  304. 2870 DATA "IN THE LOBBY. A DOOR LIES TO THE SOUTH. STAIRS LEAD UP.",12,31,,,17,
  305. 2880 DATA "IN THE FRONT ROW. THERE ARE SOME STEPS HERE.",,,12,18,,19
  306. 2890 DATA "AT THE EAST END OF AN EAST/WEST HALLWAY.",,,,21,,15
  307. 2900 DATA "ON THE MAIN STAGE. YOU HEAR SOME NOISE ABOVE.",29,25,16,,,
  308. 2910 DATA "IN THE ORCHESTRA PIT. YOU SEE A BROKEN CELLO.",,,,,16,
  309. 2920 DATA "IN A FORGOTTEN STORAGE ROOM.",,,,28,19,
  310. 2930 DATA "IN THE DRESSING ROOM. AN ANTIQUE DRESSER SITS IN THE CORNER.",,,17,,,
  311. 2940 DATA "IN A SECRET PASSAGEWAY.",,,,23,,
  312. 2950 DATA "IN A STUDY, YOU SEE A DESK. HOPE YOU CAN FIND YOUR WAY OUT!",,,22,,,
  313. 2960 DATA "IN THE SET AREA.",25,,,,,
  314. 2970 DATA "BACKSTAGE. THERE IS A CATWALK ABOVE YOU.",18,24,,,,
  315. 2980 DATA "ON A CATWALK. THERE IS AN OPEN SKYLIGHT LEADING UP.",,,,,27,25
  316. 2990 DATA "ON THE ROOF OF THE THEATRE. THE WIND IS BLOWING HARD.",30,,,,,26
  317. 3000 DATA "UNDER THE STAGE. SCUFFLING SOUNDS COME FROM BELOW.",,,20,,,34
  318. 3010 DATA "IN THE ACTORS LOUNGE MAKE YOURSELF COMFORTABLE.",,18,,,,
  319. 3020 DATA "IN A PIGEON COOP. YUCCHH WHAT A MESS!",,27,,,,
  320. 3030 DATA "IN A SUPPLY ROOM.",15,,,,,
  321. 3040 DATA "IN THE VENT SHAFT.",,,,,,10
  322. 3050 DATA "IN AN OLD PICKUP TRUCK WITH 4 CHANNEL STEREO!",,,,,,2
  323. 3060 DATA "IN A CELLAR. READY EYES PEER AT YOU THOUGH THE DARKNESS.",,,,,28,35
  324. 3070 DATA "IN THE SEWER, FULL OF STINK AND SLIME.",,,,,34,
  325. 3080 DATA END
  326. 3090 DATA "A BENT RUSTY STREET LAMP FLICKERS AND BUZZES OVERHEAD.",LAM,X,1
  327. 3100 DATA "A FOLDED NOTE LIES AT YOUR FEET.",NOT,A FOLDED NOTE,1
  328. 3110 DATA "AN OLD BEAT UP TRUCK IS NEAR.",TRU,X,2
  329. 3120 DATA "YOU SEE A FUNNY LITTLE MAN. HE LOOKS AT YOU WITH SAD EYES!"
  330. 3130 DATA MAN,FUNNY LITTLE MAN,3,"A WILD HUNGRY DOG GLARES AT YOU.",DOG,X,4
  331. 3140 DATA "A VERY LARGE VALET IN A RED SUIT SAYS 'TICKETS PLEASE'",VAL,X,6
  332. 3150 DATA "YOU SEE A LARGE BATTLE AXE ON THE WALL.",AXE,BATTLE AXE,31
  333. 3160 DATA "THERE IS AN OFFICE TO THE NORTH AND A RESTROOM TO THE SOUTH.",XXX,X,8
  334. 3170 DATA "THERE IS AN ENVELOPE ON THE WINDSHIELD.",ENV,AN ENVELOPE,
  335. 3180 DATA "YOU SEE A VENTILATION SHAFT NEAR THE CEILING.",SHA,SHAFT,10
  336. 3190 DATA "THERE IS A POPCORN MACHINE.",MAC,X,11
  337. 3200 DATA "YOU SPOT A BLOODY MESSAGE SCRATCHED INTO THE FLOOR.",MES,X,14
  338. 3210 DATA "A LARGE ASHTRAY STILL HOLDS A SMOKING BUTT!",ASH,ASHTRAY,29
  339. 3220 DATA "YOU SEE A WALLET.",WAL,A WALLET,
  340. 3230 DATA "A GOLD MEDALLION CATCHES YOUR EYE.",MED,"*GOLD MEDALLION",20
  341. 3240 DATA "YOU SEE A RING OF KEYS ON THE FLOOR.",KEY,RING OF KEYS,20
  342. 3250 DATA "YOU SEE A SKULL SHAPED LITE FIXTURE ON THE WALL.",FIX,X,21
  343. 3260 DATA "THERE IS AN EVIL LOOKING LEATHER CHAIR AGAINST THE WALL.",CHA,X,23
  344. 3270 DATA "A SUIT OF ARMOR STANDS GUARD NEAR THE ENTRANCE.",ARM,X,29
  345. 3280 DATA "A LARGE SWORD ENLAID WITH JEWELS SITS BEFORE YOU.",SWO,"* SWORD",34
  346. 3290 DATA "YOU SEE A BOOK, POEMS BY ROBERT FROST",BOO,A BOOK,23
  347. 3300 DATA "YOU SEE AN OLD CHEWED UP TENNIS BALL.",BAL,TENNIS BALL,4
  348. 3310 DATA "THERE IS A SCREWDRIVER.",SCR,A SCREWDRIVER,31
  349. 3320 DATA "HERE IS A STEEL PRYBAR.",PRY,A PRYBAR,4
  350. 3330 DATA "THERE IS A LARGE CRYSTAL PAPER WEIGHT.",CRY,CRYSTAL PAPER WEIGHT,23
  351. 3340 DATA "THERE IS A LONG LADDER.",LAD,A LADDER,24
  352. 3350 DATA "YOU SEE A TICKET.",TIC,A TICKET,0
  353. 3360 DATA "WOW! A 4FT. STRING OF PEARLS.",PEA,"*STRING OF PEARLS",32
  354. 3370 DATA "YOU SEE AN EMERALD ENCRUSTED BROOCH.",BRO,"*EMERALD BROOCH",
  355. 3380 DATA "YOU SEE A ROPE TIED TO A SMALL GRAPPLING HOOK.",ROP,A ROPE,31
  356. 3390 DATA "HERE IS A RUBY STICK PIN!",PIN,"*RUBY STICK PIN",
  357. 3400 DATA "YOU SEE A LARGE EGG SHAPED DIAMOND.",DIA,"*DIAMOND",35
  358. 3410 DATA "YOU SEE A JEWELED GOLD CIGARETTE CASE.",CAS,"*JEWELED CIGARETTE CASE",
  359. 3420 DATA "YOU SEE AN OAK DESK IN THE CORNER",DES,DESK,9,"THERE IS A FILE CABINET.
  360. 3430 DATA CAB,FILE CABINET,9,"YOU SEE A SMALL PIC.",PIC,SMALL LOCK PIC,
  361. 3440 DATA "HERE IS A SECRET COMPARTMENT.",COM,COMPARTMENT,
  362. 3450 DATA "YOU SEE A LARGE LEVER.",LEV,A LEVER,
  363. 3460 DATA "YOU SEE A HALF EATEN GOOEY CANDYBAR ON THE GROUND.",CAN,A CANDYBAR,7
  364. 3470 DATA "A LARGE GOLD NUGGET!",NUG,"*GOLD NUGGET",
  365. 3480 DATA "A LARGE MIRROR HANGS ON THE WALL.",MIR,MIRROR,10
  366. 3490 DATA "YOU SEE A SMALL PIANO.",PIA,X,19,"YOU SEE A SMALL CRATE.",CRA,CRATE,28
  367. 3500 DATA "A WAD OF MONEY!",MON,"*WAD OF MONEY",
  368. 3510 DATA "HERE SITS AN IVORY BUST OF ZACH HIMSELF",BUS,"*IVORY BUST",30
  369. 3520 DATA "STRADIVARIUS VIOLIN.",VIO,"*STRADIVARIUS VIOLIN",
  370. 3530 DATA "HANDS",HAN,X,
  371. 3540 DATA "YOU SEE SOME STALE POPCORN.",POP,POPCORN,11
  372. 3550 DATA "YOU SEE A STEEL GAUNTLET.",GAU,STEEL GAUNTLET,
  373. 3560 DATA "A GIANT RAT LICKS HIS CHOPS IN ANTICIPATION!",RAT,X,35
  374. 3570 DATA END
  375. 3580 DATA GET,DROP,OPEN,CLIMB,SIT,THROW,SCREAM,EXAMINE,PRY,EAT,READ,GIVE,UNLOCK
  376. 3590 DATA PUSH,USE,HIT,WASH,LISTEN
  377. 3600 DATA END
  378. 3610 OPEN P$ FOR INPUT AS 15
  379. 3620 INPUT#15,A$,B$:CLOSE #15
  380. 3630 PRINT B$
  381. 3640 RETURN
  382. 3650 GOSUB special
  383. 3651 DUR=28!:VOL=200!:SOUND 587.33,DUR,VOL,1:SOUND 440!,DUR/8,VOL,1:SOUND 349.23,DUR/8,VOL,1
  384. 3652 SOUND 329.63,DUR/8,VOL,1:SOUND 293.66,DUR/8,VOL,1:SOUND 329.63,DUR/8,VOL,1:SOUND 293,DUR/8,VOL,1
  385. 3653 SOUND 440!,DUR,VOL,1:SOUND 349.32,DUR,VOL,1:SOUND 293.66,DUR,VOL,1
  386. 3654 SOUND 587.33,DUR,VOL,3:SOUND 440!,DUR/8,VOL,3:SOUND 349.23,DUR/8,VOL,3
  387. 3655 SOUND 329.63,DUR/8,VOL,3:SOUND 293.66,DUR/8,VOL,3:SOUND 329.63,DUR/8,VOL,3:SOUND 293.66,DUR/8,VOL,3
  388. 3656 SOUND 440!,DUR,VOL,3:SOUND 349.32,DUR,VOL,3:SOUND 293.66,DUR,VOL,3
  389. '3650 VOL15:PLAY"T1O3WDIO2AFEDEDHWAFD   "
  390. 3660 RETURN
  391. 3670 
  392. 3671 SOUND 701!,DUR/2,VOL,1:SOUND 587.33,DUR/2,VOL,1:SOUND 880!,DUR/2,VOL,1
  393. 3672 SOUND 220!,DUR/2,VOL,1:SOUND 587.33,DUR/2,VOL,1:SOUND 1174.7,DUR/2,VOL,1
  394. 3673 SOUND 1174.7*4,DUR/2,VOL,1
  395. 3674 SOUND 701!,DUR/2,VOL,3:SOUND 587.33,DUR/2,VOL,3:SOUND 880!,DUR/2,VOL,3
  396. 3675 SOUND 220!,DUR/2,VOL,3:SOUND 587.33,DUR/2,VOL,3:SOUND 1174.7,DUR/2,VOL,3
  397. 3676 SOUND 1174.7*4,DUR/2,VOL,3
  398. 3670 ' VOL15:PLAY"T6O3HFDAO1AO3DO4T6HDHT0O6D":VOL2
  399. 3680 RETURN
  400. 3690 'VOL5:SOUND 3,3000,20,1,20,100 >>> 3000 HZ,VARIABLE PULSE WAVE,DURATION=20 (0-32767),STEP DIRECTION DOWN,MIN FREQ OF 20 W/STEP FREQ OF 100
  401. 3695 SOUND 300,5,200,1:SOUND 300,5,200,3
  402. 3700 RETURN
  403. QUIT:
  404.   SCREEN CLOSE 2
  405.   WINDOW CLOSE 2
  406. END
  407. special:
  408.   k=2*3.1416/256
  409.   FOR n=0 TO 255:waveform%(n)=65*(SIN(n*k)+SIN(n*7*k)):NEXT
  410.   WAVE 3,waveform%:WAVE 1,waveform%
  411. RETURN
  412.